Nonlinear detectors for channels with signal-dependent noise

ABSTRACT

A non-linear detector for detecting signals with signal-dependent noise is disclosed. The detector may choose a data sequence that maximizes the conditional probability of detecting the channel data. Since the channel may be time-varying and the precise channel characteristics may be unknown, the detector may adapt one or more branch metric parameters before sending the parameters to a loading block. In the loading block, the branch metric parameters may be normalized and part of the branch metric may be pre-computed to reduce the complexity of the detector. The loading block may then provide the branch metric parameters and any pre-computation to the detector. The detector may then calculate the branch metric associated with the input signal and output the channel data.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of commonly assigned, U.S. patentapplication Ser. No. 13/415,465, filed Mar. 8, 2012, which is acontinuation of, commonly assigned, U.S. patent application Ser. No.11/493,269, filed Jul. 25, 2006 (now U.S. Pat. No. 8,160,181), claimingthe benefit of U.S. Provisional Patent Application Nos. 60/729,699,filed Oct. 24, 2005, 60/742,692, filed Dec. 6, 2005, and 60/798,879,filed May 8, 2006, each of which is hereby incorporated by referenceherein in its entirety.

BACKGROUND OF THE INVENTION

This invention relates generally to apparatus and methods for detectingcommunication signals, and, more particularly, to detectingcommunication signals containing signal-dependent noise.

With the continuing evolution of computer systems, there is anincreasing demand for greater storage density. For example, due toadvances in technology, the areal densities of magnetic recording mediahave increased steadily over the past several years. To increase arealdensities using longitudinal recording, as well as increase overallstorage capacity of the media, the data bits are typically made smallerand put closer together on the magnetic media (e.g., the hard disc).However, there are limits to how small the data bits can be made. If abit becomes too small, the magnetic energy holding the bit in place mayalso become so small that thermal energy can cause it to demagnetize.This phenomenon is known as superparamagnetism. To avoidsuperparamagnetic effects, magnetic media manufacturers have beenincreasing the coercivity (the “field” required to write a bit) of themedia. However, the coercivity of the media is limited by the magneticmaterials from which the write head is made.

In order to increase the areal densities of magnetic media even further,many media manufacturers are using perpendicular recording. Unliketraditional longitudinal recording, where the magnetization is lying inthe plane of the magnetic medium, with perpendicular recording the mediagrains are oriented in the depth of the medium with their magnetizationpointing either up or down, perpendicular to the plane of the disc.Using perpendicular recording, manufacturers have exceeded magneticrecording densities of 100 Gbits per square inch, and densities of 1Terabit per square inch are feasible.

However, as storage densities increase, the signal processing anddetection of recording channels becomes more difficult. Sources ofdistortion, including media noise, electronics and head noise, signaltransition noise (e.g., transition jitter), inter-track interference,thermal asperity, partial erasure, and dropouts, are becoming more andmore pronounced. Particularly troublesome are signal-dependent types ofnoise, such as transition jitter, because these types of noise arequickly becoming the dominant sources of detection errors.Signal-dependent noise may overwhelm white noise and severely degradethe performance of detectors designed for a white noise channel.

The most common type of detector is the linear Viterbi detector. Thisdetector assumes the span of inter-symbol interference is limited andthe channel noise is additive white Gaussian noise. Accordingly, linearViterbi detectors perform poorly when the channel includes a highsignal-dependent noise component. There have been attempts to designdetectors to mitigate signal-dependent noise. However, current detectorsdesigned to combat signal-dependent noise have problems. One problemwith these types of detectors is their complexity. In order to detectdata in the presence of signal-dependent noise, the detectors mustemploy complicated correction schemes, such as modifying the Euclideanbranch metric to compensate for the noise. For example, some currentlyavailable detection techniques use either a non-linear Viterbi detectorassuming the noise is Markov, or a non-linear post-processor with asimilar Markov noise model. For a description of a non-linearpost-processor with a Markov noise model, see U.S. Pat. No. 6,931,585,to Burd et al., which is hereby incorporated by reference herein in itsentirety.

Another problem with current detection techniques is that they onlyperform well when the variance of the signal-dependent noise is small.This is because the first-order Taylor approximation of the noiseprocess is only valid for small values of variance. Thus, when thesignal-dependent noise variance is large, these detection techniques arefar from optimal.

Thus, it would be desirable to provide a more reliable detectorarchitecture for detecting signals containing signal-dependent sourcesof noise, such as transition jitter and pulse width noise. It would befurther desirable to provide a detector that does not assume the channelnoise is auto-regressive, and, therefore, the detector may be an optimaldetector for channels with signal-dependent noise.

SUMMARY OF THE INVENTION

These and other objects of the invention are accomplished in accordancewith principles of the present invention by providing a nonlineardetector for channels with signal-dependent noise. The detector maychoose a channel data sequence that maximizes the conditionalprobability of the detector's input signal given the channel datasequence. As such, the detector may be considered a maximum likelihood(ML) detector that does not assume the channel noise is Markov orauto-regressive.

In some embodiments, to simplify the branch metric calculation, thenonlinear detector assumes the conditional probability takes some form,such as a Gaussian distribution. In some of these embodiments, thedetector may further assume that the mean and variance of theconditional probability also take some form. For example, the mean maybe a function of the detector's input and the branch trellis whereas thevariance may be only a function of the branch trellis.

Since the channel may be time-varying and the channel characteristicsmay not be exactly known, in some embodiments the detector may includean adaptation block. The adaptation block may receive the detector'sinput and output and adapt at least one of the parameters in the branchmetric computation.

In some embodiments, the detector may also include a loading block. Theloading block may receive the output of the adaptation block and performsome normalization or simplification of the branch metric parametersbefore passing them to the detector. This may reduce the logic (andcomplexity) required in the detector.

In one embodiment of the invention, adaptation means may receive thedetector input and adapt at least one branch metric parameter until thesteady-state value (or a user-programmable acceptable value) is reached.Loading means may normalize the one or more parameters received from theadaptation means and send the parameters to data detection means. Thedata detection means may then choose a data sequence that maximizes theconditional probability, and output means may output the data sequence.

In one embodiment of the invention, a computer program running on aprocessor is provided for detecting a channel signal containingsignal-dependent noise. The program may include program logic to adaptone or more branch parameters. The program logic may then normalize thebranch metric parameters and maximize the conditional probability of thechannel signal given the channel data.

Further features of the invention, its nature and various advantages,will become more apparent from the accompanying drawings and thefollowing detailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram of an illustrative noise model fora recording channel in accordance with one embodiment of the invention;

FIG. 2 is an illustrative linearized noise model for small transitionjitter noise in accordance with one embodiment of the invention;

FIG. 3 is a simplified block diagram of illustrative detection apparatusin accordance with one embodiment of the invention;

FIG. 4 is a more detailed, yet still simplified, block diagram of theillustrative detector circuitry of FIG. 3 including an adaptation blockand a loading block in accordance with one embodiment of the invention;

FIG. 5 is an illustrative adaptation calculation diagram in accordancewith one embodiment of the invention;

FIG. 6 is an illustrative branch metric computation diagram inaccordance with one embodiment of the invention;

FIGS. 7A and 7B are illustrative loading calculation diagrams inaccordance with one embodiment of the invention;

FIG. 8 is a flowchart showing an illustrative process for detecting achannel signal in accordance with one embodiment of the invention;

FIG. 9A is a block diagram of an exemplary hard disk drive that canemploy the disclosed technology;

FIG. 9B is a block diagram of an exemplary digital versatile disc thatcan employ the disclosed technology;

FIG. 9C is a block diagram of an exemplary high definition televisionthat can employ the disclosed technology;

FIG. 9D is a block diagram of an exemplary cell phone that can employthe disclosed technology;

FIG. 9E is a block diagram of an exemplary set top box that can employthe disclosed technology; and

FIG. 9F is a block diagram of an exemplary media player that can employthe disclosed technology.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the present invention relate to apparatus and methods fordetecting data signals, particularly magnetic recording channel datasignals. However, the present invention may be used to detect a signalfrom any communication channel in which there is signal-dependent noise,such as optical and magneto-optical channels.

FIG. 1 depicts a simplified block diagram of illustrative noise model100 for a typical recording channel. User data (perhaps selected fromthe set {+1, −1}) may be converted to the form of signed NRZI by block102 resulting in data signal b_(k). This signal may indicate whetherthere is a transition in the data signal and also the polarity of thetransition, if it exists. Noise in the form of transition jitter maythen be added to the signal at block 104, where the transition jitter,Δ_(k), may be modeled by a noise process N_(j) having a mean of 0 and astandard deviation of σ_(j). This signal may then be applied to thechannel step response s(t) at block 106. For modeling purposes, additivewhite noise, w_(k), may also be added to the signal at adder 108. Theadditive white noise may be modeled by a noise process N_(w) with a meanof 0 and a standard deviation of σ_(w). The resulting signal of noisemodel 100 may be the convolution of data signal b_(k) and the channelstep response plus some white noise:

$\begin{matrix}{{y(t)} = {{\sum\limits_{k}\;{b_{k}{s\left( {t - {kT}_{s} - \Delta_{k}} \right)}}} + {n_{w}(t)}}} & \left( {{EQ}\mspace{14mu} 1} \right)\end{matrix}$

FIG. 2 shows illustrative linearized noise model 200 for smalltransition jitter noise. The example of FIG. 2 uses a first order Taylorapproximation of the transition jitter, i.e.:s(t−kT _(s)−Δ_(k))≈s(t−kT _(s))−Δ_(k) s′(t)|_(t=kT) _(s)   (EQ 2)Similar to FIG. 1, the user data, u_(k), may be passed through block202. Since transition jitter is only present when there is a transitionin the user data (e.g., from +1 to −1 or from −1 to +1), multiplicationunit M1 may be used to model the transition jitter. The output ofmultiplier 206 may be applied to differentiated step response 208,resulting in a value of the transition jitter. This signal may be addedto dibit response 204 (the response of two adjacent transitions in theuser data) and an additive white noise process by adder 210.

FIG. 2 uses a first-order Taylor approximation of the transition jitter.As previously discussed, this approximation is not an optimalapproximation for noise processes with a high variance. The detector ofthe present invention may not assume that the noise is auto-regressive.Rather, the detector may choose a data sequence u that maximizes theconditional probability P(y|u), where y is the channel read signal. Byapplying the chain rule, this probability may be written as:

$\begin{matrix}{\left. {{P\left( y \right.}u} \right) = {\prod\limits_{k = 1}^{n}\;{P\left( {y_{k}\left. {u,y_{1}^{k - 1}} \right)} \right.}}} & \left( {{EQ}\mspace{14mu} 3} \right)\end{matrix}$This product may be approximated (assuming finite memory) by focusing onthe local area as:

$\begin{matrix}{\prod\limits_{k = 1}^{n}\;{P\left( {{y_{k}\left. {u_{k - J}^{k},y_{k - L}^{k - 1}} \right)} = {\prod\limits_{k = 1}^{n}\;{P\left( {y_{k}\left. {s_{k - 1},s_{k},y_{k - L}^{k - 1}} \right)} \right.}}} \right.}} & \left( {{EQ}\mspace{14mu} 4} \right)\end{matrix}$where L is the memory factor and the previous state s_(k-1) and thecurrent state s_(k) represent a branch in the trellis. In EQ 4, J issome number that determines the complexity of the system. For example,in some embodiments, the larger the value of J, the greater thecomplexity.

In some embodiments, instead of calculating P(y|u) directly, thedetector may calculate −log(P(y|u)), if desired. Accordingly, in theseembodiments, the branch metric that the detector calculates maycorresponds to:−log(P(y _(k) |s _(k-1) ,s _(k) ,y _(k-L) ^(k-1))  (EQ 5)The remainder of the detection process may be similar to a standardViterbi detection process (e.g., the detector may employ the Viterbialgorithm).

The branch metric of EQ 5 may be calculated by the detector in manyways. In one embodiment, a look-up table is used. Using a look-up tablemay be the most straightforward way to calculate the branch metric. Thebranch metric may be looked up in the table using the signal y and theindex of the trellis branch. However, the table size may beprohibitively large, especially if there is a large range of y.Therefore, in some embodiments, a hybrid approach may be used, wherebycertain branch metrics are computed using a look-up table, while otherbranch metrics are computed using EQ 6, described below. In someembodiments, assumptions may be made about the form of the conditionalprobability. For example, to simplify the branch metric calculation, theconditional probability may be assumed to take the form of a Gaussiandistribution. In other embodiments, the probability may be assumed totake different forms, such as a Rayleigh, chi-square, Cauchy, orlog-normal distribution.

Assuming the probability takes a Gaussian distribution, for example, theprobability may be described by its mean m and variance σ². Afterremoving some constant factors, the branch metric may then be calculatedas:

$\begin{matrix}{{BM} = {\frac{\left( {y_{k} - m} \right)^{2}}{\sigma^{2}} + {\log\left( \sigma^{2} \right)}}} & \left( {{EQ}\mspace{14mu} 6} \right)\end{matrix}$

To further simplify the calculation, the mean m and variance σ² can alsobe assumed to take certain forms. For example, the detector can assumethe mean and variance are linear or quadratic. In one embodiment, thedetector assumes the mean m can take the form:

$\begin{matrix}{m = {b - {\sum\limits_{i = 1}^{L}\;{f_{i}y_{k - i}}}}} & \left( {{EQ}\mspace{14mu} 7} \right)\end{matrix}$where the parameters b and f_(i) are functions of the particular trellisbranch. Similarly, in some embodiments the variance σ² may be assumed tobe a function of the trellis branch only (and not a function of y).

FIG. 3 shows illustrative detection apparatus 300 in accordance with oneembodiment of the invention. An analog read signal may be read fromchannel 302 by front end 304. For example, channel 302 may be a magneticrecording channel and front end 304 may include analog filters, gaincontrol, and a timing recovery system. The signal samples y may beequalized by equalizer 306 before entering detector block 308. Equalizer306 may be, for example, a FIR equalizer. Detector block 308 may includeany suitable detector. In some embodiments, detector block 308 includesa non-linear Viterbi or Viterbi-like detector; however a PRML detector,a maximum a posteriori (MAP) detector, a tree/trellis detector, adecision feedback detector, or a hybrid detector, for example, may beused in other embodiments. Detector block 308 may output the detecteddata to some other processing apparatus (not shown).

Although the components of FIG. 3 are depicted as separate devices, thefunctionality of one or more of the components of FIG. 3 may beintegrated into a single device. For example, detector 308 may includethe equalization functionality of equalizer block 306. Alternatively, insome embodiments, equalization may not be used and equalizer block 306may be removed from detection apparatus 300 entirely.

FIG. 4 shows the illustrative detector block of FIG. 3 in more detail.Detector apparatus 400 may include nonlinear detector 402, adaptationblock 404, and loading block 406. In some embodiments, adaptation block404 and loading block 406 may be part of a signal preprocessorconfigured to provide branch metric parameters to nonlinear detector402. Detector 402, which may be a nonlinear Viterbi detector, mayreceive signal samples y from the output of equalizer 306 or front end304 of FIG. 3 as input. Adaptation block 404 may receive the input todetector 402 as well as the detected data output of detector 402. Sincethe channel may be time-varying and the channel characteristics may notbe exactly known, adaptation block may be responsible for adapting oneor more parameters used in the branch metric computation of EQ 6, suchas the trellis branch parameters, b and f_(i), as well as the varianceσ². FIG. 5, described below, shows an illustrative calculation diagramfor adaptation block 404.

In some embodiments, adaptation block 404 may provide one or more ofthese adapted parameters directly to detector 402. In other embodiments,adaptation block 404 may provide one or more of these adapted parametersto loading block 406. Loading block 406 may perform varioussimplification, normalization, or pre-calculations on the adaptedparameters received from adaptation block 404 in order to simplify thedetector's branch metric calculation. For example, as shown in EQ 6, thebranch metric calculation may require logarithm and division by thevariance. These steps may be complex for the detector to compute and mayrequire additional logic in the detector. Moreover, the detector mayreceive a wide-range of signal values (e.g., equalizer targets), andsome parameters of the branch metric calculation may exceed the rangespecified by the precision setting. Therefore, in order for the detectorto accept a wide-range of signal values and to simplify the branchmetric computation in the detector, one or more of the branch metricparameters may be normalized and/or pre-computed as shown in more detailbelow in FIGS. 7A and 7B. These normalized parameters may then be passedto the detector, which may perform the actual branch metric computation.In addition, one or more clock signals (not shown) may be coupled to oneor more of nonlinear detector 402, adaptation block 404, and loadingblock 406 to enable synchronous operation. In some embodiments, theclock signal may be generated from an external clock signal source, suchas from front end 304 (FIG. 3).

FIG. 5 shows illustrative computation diagram 500 for adaptation block404 of FIG. 4. Adaptation block 404 may use any common adaptation methodor algorithm, such as least mean square (LMS), zero-forcing, orrecursive least square (RLS). In the example of FIG. 5, the LMS methodis depicted because the LMS algorithm is a simple adaptive algorithm toillustrate; however, it should be clearly understood that any adaptationmethod or adaptive algorithm may be used. Using the LMS adaptive method,the estimation error w may be calculated as:

$\begin{matrix}{w = {{y_{k} - m} = {\left( {y_{k} - c_{k}} \right) + {\sum\limits_{i = 1}^{L}\;{f_{i}\left( {y_{k - i} - c_{k - i}} \right)}} - z}}} & \left( {{EQ}\mspace{14mu} 8} \right)\end{matrix}$where c_(k) is the linear branch value corresponding to y_(k), z is aconstant, and L is the memory factor. In EQ 8, the mean m is assumed totake a slightly different, but equivalent, form than that of EQ 7 forease of illustration. The branch metric parameters to be adapted mayinclude, for example, f_(i), σ², and z. In some embodiments, theseparameters may be adapted as:

$\begin{matrix}{\left. f_{i}\leftarrow{f_{i} - {\mu_{f}{{sgn}\left( {y_{k - i} - c_{k - i}} \right)}w}} \right.,\left. z\leftarrow{z + {\mu_{z}w}} \right.,\left. \sigma^{2}\leftarrow{\sigma^{2} + {\mu_{\sigma}\left( {w^{2} - \sigma^{2}} \right)}} \right.} & \left( {{EQ}\mspace{14mu} 9} \right)\end{matrix}$where sgn is the sign of the difference value and the μ parametersdetermine the adaptation speed. The parameters to be adapted (e.g.,f_(i), σ², and z) may initially be set to the values corresponding tothe linear Viterbi detector. In addition, initially the p parameters maybe set to larger values and then reduced to smaller values close to orat steady-state, if desired. In some embodiments, the adaptation may berun until steady-state values of the parameters of EQ 9 are reached. Inother embodiments, for faster performance the adaptation may stop beforesteady-state values are reached.

Since the parameters f_(i), σ², and z depend on the trellis branch,there may be one adaptation block for each trellis branch. However, insome embodiments, adaptation blocks may be shared among more than onetrellis branch. Since the parameters f_(i), σ², and z may take similarvalues between more than one trellis branch, similar branches may begrouped together in order to reduce the number of adaptation blocks and,hence, the complexity of the system. The adaptation block groupings mayvary depending on one or more of the parameter values.

In the example of FIG. 5, an adaptation computation diagram is shown formemory factor L=2. The memory factor is equal to 2 to simplify thefigure and not by way of limitation. Any suitable value of L may be usedand computation diagram 500 may be extended accordingly. For example,the number of delay blocks 502 and 504 (and other associated blocks) maybe increased proportional to L. Accordingly, there may be moreaccumulators than f1 accumulator 508 and f2 accumulator 510. In theexample of FIG. 5, z accumulator 506 may output the adapted z branchmetric parameter, f1 accumulator 508 may output the adapted f₁ branchmetric parameter, f2 accumulator 510 may output the adapted f₂ branchmetric parameter, and variance accumulator 512 may output the adaptedvariance σ² branch metric parameter.

One or more of these parameters may be adapted at any convenient time.For example, the parameters may be adapted for every new sector of inputdata. As another example, the parameters may be adapted after auser-programmable amount of time or when the received samples havechanged their values by some user-programmable threshold value (e.g., amoving average or mean calculation has deviated greater than somethreshold value), or any other convenient time.

Once the branch metric parameters have been adapted, the parameter b maybe computed as:

$\begin{matrix}{b = {z + c_{k} + {\sum\limits_{i = 1}^{L}\;{f_{i}c_{k - i}}}}} & \left( {{EQ}\mspace{14mu} 10} \right)\end{matrix}$In some embodiments, the detector may now calculate the branch metricusing EQS 6 and 7. However, from these equations, it is clear that thebranch metric calculation requires some complex computation, such aslogarithm and division by the variance. Moreover, the detector ideallyshould be able to handle a wide range of equalizer targets. Therefore,in some embodiments the branch metric parameters may be furtherprocessed by loading block 406 (FIG. 4).

Instead of passing the branch metric parameters b, f_(i), and σ²directly to the detector, in some embodiments these parameters may benormalized first. For example, in one embodiment, the loading stage maypass 1/σ, f_(i)/σ, b/σ, and an offset value to the detector as thebranch metric parameters. Since scaling and adding a constant to thebranch metric will not change the detector's decision, a new branchmetric that is simpler to compute may be calculated. For example, thisnew branch metric may take the form of:BM_(new)=σ_(min) ²BM_(old)−σ_(min) ² log(σ_(min) ²)  (EQ 11)where BM_(old) is the branch metric defined by EQS 6 and 7 and σ² _(min)is the minimum variance among all the branches.

FIG. 6 shows illustrative new branch metric computation diagram 600. Inone embodiment, to calculate this new branch metric, loading block 406(FIG. 4) may pass the following normalized versions of the branch metricparameters and offset value to the detector:

$\begin{matrix}{{f_{0}^{\;^{\prime}} = \left( {\sigma_{\min}/\sigma} \right)}{{f_{i}^{\;^{\prime}} = {\left( {\sigma_{\min}/\sigma} \right)f_{i}}},{i = 1},\ldots\mspace{14mu},L}{b^{\prime} = {\left( {\sigma_{\min}/\sigma} \right)b}}{{offset} = {\sigma^{2}{\log\left( {\sigma^{2}/\sigma_{\min}^{2}} \right)}}}} & \left( {{EQ}\mspace{14mu} 12} \right)\end{matrix}$In the example of FIG. 6, branch metric computation block 602 maycalculate the new branch metric for a memory factor L=2; however, branchmetric computation block 602 may be expanded to calculate the branchmetric for any value of L. From FIG. 6, it is apparent that the newbranch metric is much simpler to compute. Namely, there are no longerany logarithms or divisions to compute because of the pre-computation ofthe offset value and the normalization of the branch metric parametersas shown in EQ 12. These computation may be performed by loading block406 (FIG. 4) to reduce the complexity of the detector.

The computation of the normalized branch metric parameters and theoffset value are shown in illustrative FIGS. 7A and 7B for a memoryfactor L=2. Computation diagram 700 may calculate the normalized branchmetric parameters b′ and f_(i)′ while computation diagram 710 maycalculate the offset value. In some embodiments, these values may bestored in memory (e.g., RAM, ROM, or hybrid types of memory) for accessby the detector. The detector may then calculate the branch metric usingEQ 11 and output the detector's decision.

FIG. 8 shows illustrative process 800 for calculating a branch metricand outputting a detector decision. At step 802 a signal may be receivedfrom the channel. For example, the signal may be digitized by front end304 (FIG. 3) and, optionally, equalized. At step 804, one or more branchmetric parameters may be adapted. For example, one or more of the f_(i),σ², and z parameters of the branch metric may be adapted. At decision,806 the adaptation block may determine if the steady-state values of theparameters has been reached. If not, adaptation may continue at step804. Once the steady-state value has been reached, the parameters may benormalized at step 808. At step 808, some pre-computation of the branchmetric may also be performed in order to simplify computation within thedetector. Finally, at step 810 the detector may calculate the branchmetric and output the detector decision that maximizes the conditionalprobability of EQ 4.

Referring now to FIGS. 9A-9F, various exemplary implementations of thepresent invention are shown.

Referring now to FIG. 9A, the present invention can be implemented in ahard disk drive 900. The present invention may implement either or bothsignal processing and/or control circuits, which are generallyidentified in FIG. 9A at 902. In some implementations, the signalprocessing and/or control circuit 902 and/or other circuits (not shown)in the HDD 900 may process data, perform coding and/or encryption,perform calculations, and/or format data that is output to and/orreceived from a magnetic storage medium 906.

The HDD 900 may communicate with a host device (not shown) such as acomputer, mobile computing devices such as personal digital assistants,cellular phones, media or MP3 players and the like, and/or other devicesvia one or more wired or wireless communication links 908. The HDD 900may be connected to memory 909 such as random access memory (RAM), lowlatency nonvolatile memory such as flash memory, read only memory (ROM)and/or other suitable electronic data storage.

Referring now to FIG. 9B, the present invention can be implemented in adigital versatile disc (DVD) drive 910. The present invention mayimplement either or both signal processing and/or control circuits,which are generally identified in FIG. 9B at 912, and/or mass datastorage of the DVD drive 910. The signal processing and/or controlcircuit 912 and/or other circuits (not shown) in the DVD 910 may processdata, perform coding and/or encryption, perform calculations, and/orformat data that is read from and/or data written to an optical storagemedium 916. In some implementations, the signal processing and/orcontrol circuit 912 and/or other circuits (not shown) in the DVD 910 canalso perform other functions such as encoding and/or decoding and/or anyother signal processing functions associated with a DVD drive.

The DVD drive 910 may communicate with an output device (not shown) suchas a computer, television or other device via one or more wired orwireless communication links 917. The DVD 910 may communicate with massdata storage 918 that stores data in a nonvolatile manner. The mass datastorage 918 may include a hard disk drive (HDD). The HDD may have theconfiguration shown in FIG. 9A. The HDD may be a mini HDD that includesone or more platters having a diameter that is smaller thanapproximately 1.8″. The DVD 910 may be connected to memory 919 such asRAM, ROM, low latency nonvolatile memory such as flash memory and/orother suitable electronic data storage.

Referring now to FIG. 9C, the present invention can be implemented in ahigh definition television (HDTV) 920. The present invention mayimplement either or both signal processing and/or control circuits,which are generally identified in FIG. 9C at 922, a WLAN interfaceand/or mass data storage of the HDTV 920. The HDTV 920 receives HDTVinput signals in either a wired or wireless format and generates HDTVoutput signals for a display 926. In some implementations, signalprocessing circuit and/or control circuit 922 and/or other circuits (notshown) of the HDTV 920 may process data, perform coding and/orencryption, perform calculations, format data and/or perform any othertype of HDTV processing that may be required.

The HDTV 920 may communicate with mass data storage 927 that stores datain a nonvolatile manner such as optical and/or magnetic storage devices.At least one HDD may have the configuration shown in FIG. 9A and/or atleast one DVD may have the configuration shown in FIG. 9B. The HDD maybe a mini HDD that includes one or more platters having a diameter thatis smaller than approximately 1.8″. The HDTV 920 may be connected tomemory 928 such as RAM, ROM, low latency nonvolatile memory such asflash memory and/or other suitable electronic data storage. The HDTV 920also may support connections with a WLAN via a WLAN network interface929.

Referring now to FIG. 9D, the present invention can be implemented in acellular phone 930 that may include a cellular antenna 931. The presentinvention may implement either or both signal processing and/or controlcircuits, which are generally identified in FIG. 9D at 932, a WLANinterface and/or mass data storage of the cellular phone 930. In someimplementations, the cellular phone 930 includes a microphone 936, anaudio output 938 such as a speaker and/or audio output jack, a display940 and/or an input device 942 such as a keypad, pointing device, voiceactuation and/or other input device. The signal processing and/orcontrol circuits 932 and/or other circuits (not shown) in the cellularphone 930 may process data, perform coding and/or encryption, performcalculations, format data and/or perform other cellular phone functions.

The cellular phone 930 may communicate with mass data storage 944 thatstores data in a nonvolatile manner such as optical and/or magneticstorage devices for example hard disk drives HDD and/or DVDs. At leastone HDD may have the configuration shown in FIG. 9A and/or at least oneDVD may have the configuration shown in FIG. 9B. The HDD may be a miniHDD that includes one or more platters having a diameter that is smallerthan approximately 1.8″. The cellular phone 930 may be connected tomemory 946 such as RAM, ROM, low latency nonvolatile memory such asflash memory and/or other suitable electronic data storage. The cellularphone 930 also may support connections with a WLAN via a WLAN networkinterface 948.

Referring now to FIG. 9E, the present invention can be implemented in aset top box 950. The present invention may implement either or bothsignal processing and/or control circuits, which are generallyidentified in FIG. 9E at 954, a WLAN interface and/or mass data storageof the set top box 950. The set top box 950 receives signals from asource such as a broadband source and outputs standard and/or highdefinition audio/video signals suitable for a display 958 such as atelevision and/or monitor and/or other video and/or audio outputdevices. The signal processing and/or control circuits 954 and/or othercircuits (not shown) of the set top box 950 may process data, performcoding and/or encryption, perform calculations, format data and/orperform any other set top box function.

The set top box 950 may communicate with mass data storage 960 thatstores data in a nonvolatile manner. The mass data storage 960 mayinclude optical and/or magnetic storage devices for example hard diskdrives HDD and/or DVDs. At least one HDD may have the configurationshown in FIG. 9A and/or at least one DVD may have the configurationshown in FIG. 9B. The HDD may be a mini HDD that includes one or moreplatters having a diameter that is smaller than approximately 1.8″. Theset top box 950 may be connected to memory 964 such as RAM, ROM, lowlatency nonvolatile memory such as flash memory and/or other suitableelectronic data storage. The set top box 950 also may supportconnections with a WLAN via a WLAN network interface 966.

Referring now to FIG. 9F, the present invention can be implemented in amedia player 970. The present invention may implement either or bothsignal processing and/or control circuits, which are generallyidentified in FIG. 9F at 974, a WLAN interface and/or mass data storageof the media player 970. In some implementations, the media player 970includes a display 977 and/or a user input 1108 such as a keypad,touchpad and the like. In some implementations, the media player 970 mayemploy a graphical user interface (GUI) that typically employs menus,drop down menus, icons and/or a point-and-click interface via thedisplay 977 and/or user input 978. The media player 970 further includesan audio output 979 such as a speaker and/or audio output jack. Thesignal processing and/or control circuits 974 and/or other circuits (notshown) of the media player 970 may process data, perform coding and/orencryption, perform calculations, format data and/or perform any othermedia player function.

The media player 970 may communicate with mass data storage 980 thatstores data such as compressed audio and/or video content in anonvolatile manner. In some implementations, the compressed audio filesinclude files that are compliant with MP3 format or other suitablecompressed audio and/or video formats. The mass data storage may includeoptical and/or magnetic storage devices for example hard disk drives HDDand/or DVDs. At least one HDD may have the configuration shown in FIG.9A and/or at least one DVD may have the configuration shown in FIG. 9B.The HDD may be a mini HDD that includes one or more platters having adiameter that is smaller than approximately 1.8″. The media player 970may be connected to memory 974 such as RAM, ROM, low latency nonvolatilememory such as flash memory and/or other suitable electronic datastorage. The media player 970 also may support connections with a WLANvia a WLAN network interface 986. Still other implementations inaddition to those described above are contemplated.

It will be understood that the foregoing is only illustrative of theprinciples of the invention, and that various modifications can be madeby those skilled in the art without departing from the scope and spiritof the invention.

What is claimed is:
 1. A signal detector for detecting channel data inan input signal, the signal detector comprising: preprocessor circuitryresponsive to the input signal and an output of a nonlinear detector toadapt at least one parameter used by the nonlinear detector to calculatea branch metric; and loading circuitry to compute a term comprising afunction of the at least one parameter and other parameters and anoffset term, wherein the function includes a comparison operation of theat least one parameter and the other parameters.
 2. The signal detectorof claim 1 further comprising an equalizer to equalize the input signal.3. The signal detector of claim 2 wherein the equalizer comprises afinite impulse response (FIR) equalizer.
 4. The signal detector of claim1 further comprising a clock source coupled to the nonlinear detectorand the preprocessor circuitry.
 5. The signal detector of claim 1wherein the branch metric is proportional to a conditional probabilityof the input signal given the channel data.
 6. The signal detector ofclaim 5 wherein the conditional probability is assumed to be a Gaussiandistribution.
 7. The signal detector of claim 6 wherein the at least oneparameter comprises at least two parameters.
 8. The signal detector ofclaim 1 wherein the term comprising a function of the at least oneparameter and other parameters and the offset term are summed togetherto calculate the branch metric.
 9. The signal detector of claim 1wherein the comparison operation of the at least one parameter and theother parameters identifies a minimum value between the at least oneparameter and other parameters.
 10. The signal detector of claim 1wherein the offset term comprises a logarithm of the function.
 11. Amethod for detecting channel data in an input signal, the methodcomprising: preprocessing at least one parameter used to calculate abranch metric associated with the input signal; and computing a termcomprising a function of the at least one parameter and other parametersand computing an offset term, wherein the function includes a comparisonoperation of the at least one parameter and the other parameters. 12.The method of claim 11 wherein preprocessing the at least one parametercomprises adapting the at least one parameter based at least in part onthe input signal and an output signal of a non-linear detector.
 13. Themethod of claim 12 wherein adapting the at least one parameter comprisesaccumulating the at least one parameter.
 14. The method of claim 12further comprising equalizing the input signal before adapting the atleast one parameter.
 15. The method of claim 11 wherein the branchmetric is proportional to a conditional probability of the input signalgiven the channel data.
 16. The method of claim 15 wherein theconditional probability is assumed to be a Gaussian distribution. 17.The method of claim 16 wherein the at least one parameter comprises atleast two parameters.
 18. The method of claim 11 wherein the termcomprising a function of the at least one parameter and other parametersand the offset term are summed together to calculate the branch metric.19. The method of claim 11 wherein the comparison operation of the atleast one parameter and the other parameters identifies a minimum valuebetween the at least one parameter and other parameters.
 20. The methodof claim 11 wherein the offset term comprises a logarithm of thefunction.